/**
 * 
 */
package com.alstudio.module.xmpp.protocol.xmpp.parser.iq.voip;

import com.alstudio.module.xmpp.protocol.xmpp.ALXmppEventListener;
import com.alstudio.module.xmpp.protocol.xmpp.packact.ALIQ;
import com.alstudio.module.xmpp.protocol.xmpp.parser.iq.ALBaseIQParser;
import com.alstudio.module.xmpp.protocol.xmpp.parser.iq.IQParseEventHandler.IQXmlParseEventCallback;
import com.alstudio.utils.formater.numeric.ALNumericUtils;
import com.alstudio.utils.log.ALLog;

/**
 * 解析进入爆米花
 * @author alonso lee
 *
 */
public class EnterBaoMiHuaParser extends ALBaseIQParser implements
		IQXmlParseEventCallback {
	
	@Override
	public void parseIQPackage(ALIQ packact, String stream, ALXmppEventListener listener)
			throws Exception {
		// TODO Auto-generated method stub
		code = 0;
		mListener = listener;
		startParse(packact, stream, this);
	}

	/* (non-Javadoc)
	 * @see com.alstudio.module.xmpp.protocol.xmpp.parser.iq.IQParseEventHandler.IQXmlParseEventCallback#processErrorStartTag(java.lang.String)
	 */
	@Override
	public void processErrorStartTag(String tag) {
		// TODO Auto-generated method stub
		if (tag.equals(ERROR_CODE_TAG)) {
			code = ALNumericUtils.parseInt(getAttValue("code"), 0);
		}
	}

	/* (non-Javadoc)
	 * @see com.alstudio.module.xmpp.protocol.xmpp.parser.iq.IQParseEventHandler.IQXmlParseEventCallback#processSetStartTag(java.lang.String)
	 */
	@Override
	public void processSetStartTag(String tag) {
		// TODO Auto-generated method stub

	}

	/* (non-Javadoc)
	 * @see com.alstudio.module.xmpp.protocol.xmpp.parser.iq.IQParseEventHandler.IQXmlParseEventCallback#processGetStartTag(java.lang.String)
	 */
	@Override
	public void processGetStartTag(String tag) {
		// TODO Auto-generated method stub

	}

	/* (non-Javadoc)
	 * @see com.alstudio.module.xmpp.protocol.xmpp.parser.iq.IQParseEventHandler.IQXmlParseEventCallback#processResultStartTag(java.lang.String)
	 */
	@Override
	public void processResultStartTag(String tag) {
		// TODO Auto-generated method stub

	}

	/* (non-Javadoc)
	 * @see com.alstudio.module.xmpp.protocol.xmpp.parser.iq.IQParseEventHandler.IQXmlParseEventCallback#processEndTag(java.lang.String)
	 */
	@Override
	public void processEndTag(String tag) {
		// TODO Auto-generated method stub

	}

	/* (non-Javadoc)
	 * @see com.alstudio.module.xmpp.protocol.xmpp.parser.iq.IQParseEventHandler.IQXmlParseEventCallback#processStartDocument()
	 */
	@Override
	public void processStartDocument() {
		// TODO Auto-generated method stub

	}

	/* (non-Javadoc)
	 * @see com.alstudio.module.xmpp.protocol.xmpp.parser.iq.IQParseEventHandler.IQXmlParseEventCallback#processEndDocument()
	 */
	@Override
	public void processEndDocument() {
		// TODO Auto-generated method stub
		onCallback();
	}

	/* (non-Javadoc)
	 * @see com.alstudio.module.xmpp.protocol.xmpp.parser.iq.ALBaseIQParser#onCallback()
	 */
	@Override
	public void onCallback() {
		// TODO Auto-generated method stub
		if(mListener != null){
			mListener.onGetEnterBaoMiHuaResult(code);
			ALLog.d("回调进入爆米花结果 "+code);
		}
	}

}
